package com.ruoyi.system.domain;

import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableLogic;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;

import java.math.BigDecimal;
import java.util.Date;

/**
 * 设备位号对象 dc3_point
 *
 * @author ruoyi
 * @date 2025-01-06
 */
public class Dc3Point extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 主键ID */
    @TableId
    @JsonSerialize(using = ToStringSerializer.class)
    private Long id;

    /** 位号名称 */
    @Excel(name = "位号名称")
    private String pointName;

    /** 位号编号 */
    @Excel(name = "位号编号")
    private String pointCode;

    /** 位号类型标识 */
    @Excel(name = "位号类型标识")
    private Long pointTypeFlag;

    /** 读写标识 */
    @Excel(name = "读写标识")
    private Long rwFlag;

    /** 基础值 */
    @Excel(name = "基础值")
    private BigDecimal baseValue;

    /** 比例系数 */
    @Excel(name = "比例系数")
    private BigDecimal multiple;

    /** 数据精度 */
    @Excel(name = "数据精度")
    private Long valueDecimal;

    /** 单位 */
    @Excel(name = "单位")
    private String unit;

    /** 模板ID */
    @Excel(name = "模板ID")
    private Long profileId;

    /** 报警通知模板ID */
    @Excel(name = "报警通知模板ID")
    private Long alarmNotifyProfileId;

    /** 报警信息模板ID */
    @Excel(name = "报警信息模板ID")
    private Long alarmMessageProfileId;

    /** 分组ID */
    @Excel(name = "分组ID")
    private Long groupId;

    /** 位号拓展信息 */
    @Excel(name = "位号拓展信息")
    private String pointExt;

    /** 使能标识 */
    @Excel(name = "使能标识")
    private Long enableFlag;

    /** 租户ID */
    @Excel(name = "租户ID")
    private Long tenantId;

    /** 签名 */
    @Excel(name = "签名")
    private String signature;

    /** 版本 */
    @Excel(name = "版本")
    private Long version;

    /** 创建者ID */
    @Excel(name = "创建者ID")
    private Long creatorId;

    /** 创建者名称 */
    @Excel(name = "创建者名称")
    private String creatorName;

    /** 操作者ID */
    @Excel(name = "操作者ID")
    private Long operatorId;

    /** 操作者名称 */
    @Excel(name = "操作者名称")
    private String operatorName;

    /** 操作时间 */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @Excel(name = "操作时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date operateTime;

    /** 逻辑删除标识, 0:未删除, 1:已删除 */
    @Excel(name = "逻辑删除标识, 0:未删除, 1:已删除")
    @TableLogic
    private Long deleted;


}
